<?php
namespace app\index\controller;

use think\Controller;
use think\Db;
use think\Session;

class Uploader extends Controller {
    function index(){
        $user=Session::get('user');
        $this->assign('level',$user->level);
        return  view();
    }
    //上传文件
    function upload(){
        // 获取表单上传文件 例如上传了001.jpg
        $file = request()->file('file');
        // 移动到框架应用根目录/public/uploads/ 目录下
        if($file){
            $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads');
            if($info){
                // 成功上传后 获取上传信息
                // 输出 20160820/42a79759f284b767dfcb2a0197904287.jpg
                $sql['url'] = '/uploads/'.$info->getSaveName();
                $sql['date'] = date('Y-m-d');
                Db::table('file')->insert($sql);
                $ret['id'] = Db::table('file')->getLastInsID();

                if($ret['id']){
                    $this->success('成功上传','',$ret);
//                    return json($ret);
                }
            }else{
                // 上传失败获取错误信息
                $ret['err'] = $file->getError();
                $this->error('上传错误','',$ret['err']);
            }
        }
    }
    //将文件名存入数据库
    function saveFile(){
        $Id = input('id');
        $data['name'] = input('name');
        $ret = Db::table('file')->where('Id','=',$Id)->update($data);
        if($ret){
            $this->success('插入成功');
        }
        else{
            $this->error('插入失败');
        }

    }
    //删除数据库中保存的文件名
    function delFile(){
        $id = input('file_id');
        $url = Db::table('file')->where('Id','=',$id)->find();
        $ret = Db::table('file')->where('Id','=',$id)->delete();
        if($ret){

            $file = '.'.$url['url'];
            if(unlink($file)){
                $this->success('删除成功');
            }
            else{
                $this->error('删除失败');
            }
        }
        else{
            $this->error('未找到文件路径');
        }
    }

}